var MaterialSelector = {
	getView : function(i, c) {
		var f = new Ext.tree.TreePanel({
			title : "材料选择器",
			region : "west",
			width : 180,
			height : 300,
			split : true,
			collapsible : true,
			autoScroll : true,
			bbar : new Ext.Toolbar({
				items : [{
							xtype : "button",
							iconCls : "btn-refresh",
							text : "刷新",
							handler : function() {
								f.root.reload();
							}
						}, {
							xtype : "button",
							text : "展开",
							iconCls : "btn-expand",
							handler : function() {
								f.expandAll();
							}
						}, {
							xtype : "button",
							text : "收起",
							iconCls : "btn-collapse",
							handler : function() {
								f.collapseAll();
							}
						}]
			}),
			loader : new Ext.tree.TreeLoader({
				url : __ctxPath + "/system/getTreeOfTreeType.do?className=Material",
				baseParams : {
					start : 0,
					limit : 100
				}
			}),
			root : {},
			rootVisible : false,
			listeners : {
				"click" : function(k) {
					if (k != null) {
						var l = Ext.getCmp("MaterialSelectorGrid");
						var j = l.getStore();
						j.proxy.conn.url = __ctxPath + "/produce/listMaterial.do";
						if (k.attributes.typeId != -1) {
							j.baseParams = {
								"Q_treeType.id_L_EQ" : k.attributes.typeId
							};
						}
						j.load({
							params : {
								start : 0,
								limit : 12
							}
						});
					}
				}
			}
		});
		var b = null;
		if (c) {
			var b = new Ext.grid.CheckboxSelectionModel({
				singleSelect : true
			});
		} else {
			b = new Ext.grid.CheckboxSelectionModel();
		}
		var h = new Ext.grid.ColumnModel({
			columns : [b, new Ext.grid.RowNumberer(), {
						header : 'id',
						dataIndex : 'id',
						hidden : true
					}, {
						header : '材料分类',
						dataIndex : 'treeType',
						renderer : function(value, meta, record) {
							if (!Ext.isEmpty(value)) {
								return value.typeName;
							}
						}
					}, {
						header : '材料编码',
						dataIndex : 'materialNo'
					}, {
						header : '材料名称',
						dataIndex : 'materialName'
					}, {
						header : '品种规格',
						dataIndex : 'brandModel'
					}]
		});
		var g = new Ext.data.Store({
			proxy : new Ext.data.HttpProxy({
				url : __ctxPath + "/produce/listMaterial.do"
			}),
			reader : new Ext.data.JsonReader({
				root : "result",
				totalProperty : "totalCounts",
				fields : [{
							name : 'id',
							type : 'int'
						}, 'treeType', 'materialNo', 'materialName', 'brandModel', 'breastHeight', 'seedHeight', 'crown', 'unit', 'num', 'unitPrice', 'remark',
						'status', 'createUser', 'createTime']
			}),
			sortInfo : {
				field : "id",
				direction : "desc"
			},
			remoteSort : true
		});
		var d = new Ext.grid.GridPanel({
			id : "MaterialSelectorGrid",
			width : 400,
			height : 300,
			region : "center",
			title : "材料列表",
			store : g,
			shim : true,
			trackMouseOver : true,
			disableSelection : false,
			loadMask : true,
			cm : h,
			sm : b,
			viewConfig : {
				forceFit : true,
				enableRowBody : false,
				showPreview : false
			},
			bbar : new Ext.PagingToolbar({
				pageSize : 25,
				store : g,
				displayInfo : true,
				displayMsg : "当前显示从{0}至{1}， 共{2}条记录",
				emptyMsg : "当前没有记录"
			})
		});
		g.load({
			params : {
				start : 0,
				limit : 12
			}
		});
		var a = new Ext.FormPanel({
			width : 400,
			region : "north",
			id : "MaterialSearchForm",
			height : 40,
			frame : false,
			border : false,
			layout : "hbox",
			layoutConfig : {
				padding : "5",
				align : "middle"
			},
			defaults : {
				xtype : "label",
				margins : {
					top : 0,
					right : 4,
					bottom : 4,
					left : 4
				}
			},
			items : [{
						text : "请输入查询条件:"
					}, {
						style : 'margin-top:5px;',
						xtype : 'label',
						text : '材料编码:'
					}, {
						name : 'Q_materialNo_S_LK',
						xtype : 'textfield'
					}, {
						style : 'margin-top:5px;',
						xtype : 'label',
						text : '材料名称:'
					}, {
						name : 'Q_materialName_S_LK',
						xtype : 'textfield'
					}, {
						xtype : "button",
						text : "查询",
						iconCls : "search",
						handler : function() {
							var j = Ext.getCmp("MaterialSearchForm");
							var k = Ext.getCmp("MaterialSelectorGrid");
							if (j.getForm().isValid()) {
								j.getForm().submit({
									waitMsg : "正在提交查询",
									url : __ctxPath + "/produce/listMaterial.do",
									success : function(m, n) {
										var l = Ext.util.JSON.decode(n.response.responseText);
										k.getStore().loadData(l);
									}
								});
							}
						}
					}]
		});
		var tabGroupMgr = new Ext.WindowGroup();
		//前置窗口
		tabGroupMgr.zseed=99999;
		var e = new Ext.Window({
			title : "选择材料",
			iconCls : "menu-City-manage",
			width : 630,
			height : 380,
			manager: tabGroupMgr,
			layout : "border",
			border : false,
			items : [f, a, d],
			modal : true,
			buttonAlign : "center",
			buttons : [{
						iconCls : "btn-ok",
						text : "确定",
						handler : function() {
							var l = Ext.getCmp("MaterialSelectorGrid");
							var m = l.getSelectionModel().getSelections();
							var materialIds = "";
							var materialNos = "";
							var materialNames = "";

							for (var k = 0; k < m.length; k++) {
								if (k > 0) {
									materialIds += ",";
									materialNos += ",";
									materialNames = ",";
								}
								materialIds += m[k].data.id;
								materialNos += m[k].data.materialNo;
								materialNames += m[k].data.materialName;
							}
							if (i != null) {
								i.call(this, materialIds, materialNos, materialNames);
							}
							e.close();
						}
					}, {
						text : "取消",
						iconCls : "btn-cancel",
						handler : function() {
							e.close();
						}
					}]
		});
		return e;
	}
};